Recording control apparatus and control method using the same recording control apparatus

ABSTRACT

The present invention, which includes a USB interface for receiving recording data from an external processor by using a first logical channel of multiple logical channels thereof, a recording unit for recording an image on the basis of recording data, and the USB interface for connecting with the recording unit, transfers recording data to the recoding unit via the USB interface and causes the recording unit to record, while forbidding to receive the recording data from the external processor via the USB interface during a recording operation of the recording unit.

FIELD OF THE INVENTION

[0001] The present invention relates to a recording (printing) controlapparatus for controlling a recording process in a recording unit and amethod for controlling by using the control apparatus.

BACKGROUND OF THE INVENTION

[0002] One of known facsimiles connectable to an information-processingterminal such as a personal computer is disclosed, for example in,Japanese Patent Laid-Open No. 7-288625 which can be connected to aninformation-processing terminal (a computer device) via bi-directionalparallel port such as one from Centronics Data Computer Inc. (IEEE 1284compliant), or via Universal Serial Bus (USB). In image processingsystems having a facsimile and an information-processing terminal thatare interconnected using such a scheme, the interconnection is providedonly by a mechanism in which a single logical interface is provided on asingle physical. Because of this, when using such ainformation-processing terminal to control a multifunction facsimilehaving functions such as a printer, a scanner, or a facsimile, thefunctions of the facsimile cannot operate in parallel, resulting inincomplete uses of the advantages of the multifunction facsimile. Inorder to force the multifunction facsimile perform multiple functions inparallel, operations described below have to be taken.

[0003] Specifically, in the information-processing terminal, headerinformation that identifies each of functions such a printer, a scanner,or a facsimile has to be added to the top of a control command, thecommand has to be edited and then packetized, and finally the packetizeddata has to be sent to the multifunction facsimile to designate each ofthe functions. This leads a big problem in that it requires an effort torebuild a driver to be installed in the information-processing terminal,that the control operation is complicated, and that throughput is low.

[0004] Moreover, in the case of a multifunction facsimile that receivespacketized data from an information-processing terminal, analysis of thepacketized data is required to determine which the data is to beprocessed with among a printer and a scanner, or whether the data is forfacsimile communication. Furthermore, it is also required that, after afunction to be operated is determined on the basis of header informationon the top of a control command, the header information be deleted oredited. This caused another big problem of complicated control and lowthroughput.

[0005] Recently, a technique for easily achieving parallel operations offunctions such as a printer, a scanner, a digital camera, or a facsimilehas been proposed which employs a USB for a physical interface betweenan information-processing terminal and a facsimile to form multiplelogical channels defined by the USB standards (USB composite device). Inthis case, simpler control and higher throughput can be expected sincemultiple logical channels corresponding to respective functions areprovided; thereby eliminating the requirement that header informationfor identifying each function be added to a control command.

[0006] However, another problem occurs when employing the USB for thephysical interface between the information-processing terminal and thefacsimile to form multiple logical channels defined by the USBstandards. Specifically, in the case of a multifunction facsimile havingonly a conventional single logical interface, an information-processingterminal adds to the top of an original control command, headerinformation identifying each function such as a printer, a scanner, or afacsimile, and edits and then packetizes the command, and finally sendsthe packetized data to the multifunction facsimile. Therefore, themultifunction facsimile with a single logical interface does not startoperation until it has analyzed the packetized data to determine whichthe data received from the information-processing terminal is related toamong a printer, a scanner, and a facsimile communication. Thus, a maincontrol unit in a multifunction facsimile controls all of theoperations; this is why there occurs no trouble caused by conflictbetween operations requiring the same hardware resource.

[0007] However, when the above-described multiple logical channels areused, a control command from an information-processing terminal isdirectly transferred to operation units without the command analyzed bythe main control unit in the multifunction facsimile. This allows theoperation units in the multifunction facsimile to independently operateaccording to instructions from the information-processing terminal.Therefore, when an operator of the multifunction facsimile instructs themain control unit to locally perform an operation that requires ahardware resource such as a scanner or a printer, trouble can occur dueto conflicts for the hardware resources between instructions from theinformation-processing terminal. For example, if there are performed inparallel a printing operation caused by an instruction from theinformation-processing terminal, and a copying operation caused by aninstruction from the operator of the multifunction facsimile, theirprinting processes at printing unit will conflict with each other.

SUMMARY OF THE INVENTION

[0008] The present invention is adapted in view of the above-mentionedconventional art. A feature of the present invention is to provide arecording control apparatus and a control method using the controlapparatus, in which the recording control apparatus prevents recordingdata comes from different sources from conflicting at a recording unitby forbidding the recording unit to receive recording data from anexternal processor, when recording is performed on the basis of datafrom a data source other than the external processor while the recordingunit performs recording control on the basis of data from different datasources including the external processor.

[0009] Another purpose of the present invention is to provide arecording control apparatus and a control method using the controlapparatus, in which the control apparatus performs an exclusive controlof a hardware resource by using a semaphore.

[0010] Yet another purpose of the present invention is to provide arecording control apparatus and a control method in the controlapparatus, in which the recording control apparatus prevents recordingprocesses to use a recording unit on the basis of data comes from anexternal processor and recording data comes from other data sources fromconflicting by starting a record process with obtaining a recordingsemaphore, when the recording control apparatus performs a recordingcontrol by using a recording unit.

[0011] According to the present invention, the foregoing object isattained by providing a recording control apparatus comprising:

[0012] first interface means having multiple logical channels, forreceiving recording data from an external processor by using a firstlogical channel among the multiple logical channels;

[0013] a recording unit for recording an image on the basis of recordingdata;

[0014] second interface means for connecting with the recoding unit;

[0015] first recording control means for transmitting recording datareceived via the first interface means to the recoding unit via thesecond interface means and causing the recording unit to record; and

[0016] second recording control means for transmitting the recordingdata through the second interface means to the recoding unit and causingthe recording unit to record, while forbidding reception of recordingdata from the external processor by using the first interface meansduring the recording operation.

[0017] Further objects, features and advantages of the present inventionwill become apparent from the following detailed description ofembodiments of the present invention with reference to the accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0018]FIG. 1 depicts a block diagram showing a configuration of amultifunction facsimile of a first embodiment according to the presentinvention;

[0019]FIG. 2 depicts a conceptual drawing illustrating a USB interfacein the multifunction facsimile of the first embodiment according to thepresent invention;

[0020]FIG. 3 depicts a conceptual drawing illustrating the USBconfiguration of a recording unit in the multifunction facsimile of anexample according to the present invention;

[0021]FIG. 4 is a flowchart showing a local recording with themultifunction facsimile of the first embodiment according to the presentinvention;

[0022]FIG. 5 is a flowchart showing a local recording operation with amultifunction facsimile of a second embodiment according to the presentinvention;

[0023]FIG. 6 is a block diagram showing a configuration of themultifunction facsimile of the second embodiment according to thepresent invention;

[0024]FIG. 7 is a flowchart showing a process for locally recording bycopying, outputting a report, recording a received image, etc. at themultifunction facsimile of the second embodiment according to thepresent invention; and

[0025]FIG. 8 is a flowchart showing a process for recording on the basisof recorded data from an external processor with the multifunctionfacsimile of the second embodiment according to the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0026] Preferred embodiments of the present invention will be describedwith reference to attached drawings.

[0027]FIG. 1 is a block diagram showing a brief configuration of amultifunction facsimile 100 as an exemplary print control apparatus ofan embodiment according to the present invention. Although thisembodiment is described as a multifunction facsimile, the presentinvention is not limited to the multifunction and any device or systemwill be included in the scope of the present invention as long as it hasa printing unit and performs a printing process by using the printingunit on the basis of recording data, which is generated in the device orsystem itself, and can also perform recording at the recording unit onthe basis of recording data from a computer device by connecting thecomputer device via an interface.

[0028] In FIG. 1, CPU 101 is a main control unit for controlling theentire operation of the facsimile 100 according to a control programrecorded in ROM 102. ROM 102 records a control program performed by CPU101, an embedded operating system (OS) program, and various types ofdata. In the embodiment, each control program stored in ROM 102 performseach type of controls to be described below, while performing a softwarecontrol including scheduling or task switch under control of an embeddedOS stored in ROM 102. RAM 103, which is composed of SRAM or DRAM and thelike, stores a variable for a program control, a setting registered byoperating personnel, and management data for this facsimile 100, whileit is provided with a working buffer area for storing various types ofwork data during a control process by CPU 101. Image memory 104, whichis composed of DRAM and the like, accumulates image data read by readingunit 107 such as a scanner, for example, or image data received viacommunication line 131 and the like. Data conversion unit 105 analyzesand expands page description language (PDL) etc. input from an externalprocessor 141 into image data, expands character data into image data,or converts image data. Reading unit 107 optically reads an originalcopy by using CIS image sensor (contact image sensor) and outputs animage signal converted into electric image data. This converted imagesignal is inputted to reading control unit 106, where various types ofimage-processing including binarization and halftoning are performed onthe signal and high definition image data is output. In this embodiment,the reading control unit 106 is adapted for the reading unit 107, whichsupports both of a sheet reading method for reading an original copywhile carrying a sheet of the original copy and a book reading methodfor scanning an original copy set on a document glass.

[0029] Operation/display unit 108 includes an operation unit, whichincludes number keys, character keys, one-touch telephone number keys, amode-setting key, a decision key, and a cancel key, for operatingpersonnel to decide data on the other party to be sent an image or toregister set data. The operation/display unit 108 includes a displayunit, which includes various keys, an LED (light emitting diode) and anLCD (liquid crystal display), for displaying various input operationsperformed by operating personnel, an operating status and statusinformation of the facsimile 100. Communication control unit 109, whichincludes a modem (modulator/demodulator) and an NCU (network controlunit), is connected to an analog communication line (PSTN) 131 andperforms a communication control with T30 protocol and a line control oncall-out and call-in for a communication line. However, a control by thecommunication control unit 109 is not limited to control a communicationwith an analog line. It is matter of course that the communicationcontrol unit 109 can include a function of controlling a communicationwith a digital line. Resolution modification unit 110 can perform notonly a control of modification such as resolution modification, whichchanges a resolution of image data from, for example, dots/mm todots/inch but also scaling of image data.

[0030] Coding/decoding unit 111 performs coding (MH, MR, MMR, JBIG,JPEG, etc.), decoding and scaling of image data to be treated in thefacsimile 100. Recording control unit 112 converts image data to beprinted at a recording unit 115 such as a printer and the like into highdefinition image data by performing various kinds of image processingincluding smoothing or printed-density correction, color correction,etc. by means of an image processing control unit (not shown) andoutputs the converted data to a USB host control unit 114 (to bedescribed later). By controlling the USB host control unit 114, therecording control unit 112 regularly obtains operating status data of arecording unit 115. USB function control unit 113 performs communicationcontrol of a USB Interface 116 by performing USB packet transmission, inwhich the unit 113 converts data from a USB control task performed byCPU 101 into a packet and sends the packet to the external processor 141and, vice versa, receives a USB packet from the external processor 141,converts the packet into data and sends the converted data to the CPU101 by performing protocol control according to the USB communicationstandards. USB host control unit 114 is a control unit for communicatingaccording to a protocol stipulated by the USB standards. The USBstandards for the USB host control unit 114 allow high-speedbidirectional data communication, in which multiple hubs or functions(slaves) can be connected to a single host (master). The USB hostcontrol unit 114 has a function of a host in the USB communication.Recording unit 115, which is a printer such as a laser beam printer oran ink jet printer, prints an image on recording medium on the basis ofcolor image data or monochrome image data. The recording unit 115 andthe USB host control unit 114 perform communication according to aprotocol complying with the USB standards. The recording unit 115, inparticular, has a capability of the USB function (a function to operateas a slave to USB).

[0031] In the embodiment, one-to-one connection is adopted for USBcommunication of recording functions. The above-mentioned components101-106 and 108-114 are connected each other via a CPU bus 121controlled by the CPU 101.

[0032] Now, configuration of the USB function control unit 113 in theUSB interface will be described in detail.

[0033]FIG. 2 is a conceptual drawing illustrating the USB interface tothe USB function control unit 113 of the embodiment.

[0034] For a device shown with the biggest frame 201, which indicates anattribute of the entire of the apparatus 100, only one device can bedefined in the USB standards. An attribute of the device 201 isrepresented by a device descriptor, which includes a manufacturer ID, aproduct ID, a release number, and the number of configurations (notshown) for the device. In the embodiment, the number of configurationsis “1”.

[0035] One configuration (Configuration1 (202)) is defined for thisdevice 201. An attribute of this Configuration1 (202) is represented bya configuration descriptor, which includes the number of interfaces ofthe configuration. In the embodiment, the number of interfaces is “3”.

[0036] For Configuration1 (202), three interfaces (Interface0-Interface2(204, 207, 211)) are defined. Each attribute of these three interfaces(Interface0-Interface2 (204, 207, 211)) is represented by an interfacedescriptor, which includes the number of endpoints and class code foreach interface. In the embodiment, Interface0 (204) is for the recordingunit 115, with the number of endpoints for Interface0 (204) being “2”.Interface1 (207) is for the reading unit 107, with the number ofendpoints for Interface1 (207) being “3”. Interface2 (211) is used forsending/receiving by the facsimile, and the number of endpoints forInterface2 (211) is “3”.

[0037] For Interface0 (204) used for the recording unit 115, twoendpoints (Endpoint1, Endpoint2 (205, 206)) are defined. Each attributefor two endpoints, Endpoint1 and Endpoint2 (205, 206), is represented byan endpoint descriptor, which includes an endpoint number, a directionof the communication, a type of transfer, and a packet size. Endpoint1(205) is mainly used for receiving control data and print data sent fromthe external processor 141 to the recording unit 115. Endpoint2 (206) ismainly used for sending an operating status on the basis of receivedprint data from the recording unit 115 to the external processor 141.

[0038] For Interface1 (207) used for the recording unit 107, threeendpoints (Endpoint3, Endpoint4, Endpoint5 (208, 209, 210)) are defined.Each attribute for the endpoints, Endpoint3, Endpoint4, Endpoint5 (208,209, 210) is represented by an endpoint descriptor, which includes anendpoint number, a direction of the communication, a type of transfer,and a packet size. Endpoint3 (208) is mainly used for sending read datafrom the reading unit 107 to the external processor 141. Endpoint4 (209)is mainly used for receiving control data from the external processor141. Endpoint5 (210) is mainly used by the reading unit 107 forinforming the external processor 141 of the fact that scan starts at thereading unit 107.

[0039] For Interface2 (211) used for sending/receiving by the facsimile,three endpoints (Endpoint6, Endpoint7, Endpoint8 (212, 213, 214)) aredefined. Each attribute of the endpoints, Endpoint6, Endpoint7,Endpoint8 (212, 213, 214) is represented by an endpoint descriptor,which includes an endpoint number, a direction of the communication, atype of transfer, and a packet size. Endpoint6 (212) is mainly used forreceiving control data from the external processor 141 or receiving datasent by the facsimile. Endpoint7 (213) is mainly used for sending datareceived by facsimile or a communication status of sending/receiving infacsimile to the external processor 141. Furthermore, Endpoint8 (214) ismainly used for informing the external processor 141 of the fact thatreceiving in facsimile ends.

[0040] Now, a configuration of the USB interface to the recording unit115 will be described in detail.

[0041]FIG. 3 is a conceptual drawing illustrating a USB interface to therecording unit 115 in the facsimile 100 of the embodiment.

[0042] For a device shown with the biggest frame 301, which indicates anattribute of the entire apparatus 100, only one device can be defined inthe USB standards. An attribute of the device 301 is represented by adevice descriptor, which includes a manufacturer ID, a product ID, arelease number, and the number of configuration (not shown) for thedevice. In the embodiment, the number of configuration is “1”. Oneconfiguration (Configuration1 (302)) is defined to this device 301. Anattribute of Configuration1 (302) is represented by a configurationdescriptor, which includes the number of interfaces in theconfiguration. In the embodiment, the number of interfaces is “1”.

[0043] For Configuration1 (302), one interface (Interface0 (304)) isdefined. An attribute of this Interface0 (304) is represented by aninterface descriptor, which includes the number of endpoints and classcode for each interface. In the first embodiment, the number ofendpoints in Interface0 (304) used for printing is “2”. InConfiguration1 (302), Endpoint0 (403) is used for controlling theapparatus 100, serving as a path for sending configuration data of theapparatus. In the facsimile 100, the CPU 101 is also used for sending anoperating status of the recording unit 115.

[0044] Two endpoints, Endpoint1 and Endpoint2 (305, 306) are defined inInterface0 (304) used for printing. Each attribute for the endpoints,Endpoint1 and Endpoint2 (305, 306) is represented by an endpointdescriptor, which includes an endpoint number of the endpoint, adirection of the communication, a type of transfer, and a packet size.Endpoint1 (305) is mainly used for receiving control data or print datafrom the CPU 101 or the external processor 141. Endpoint2 (306) ismainly used for sending a printing operation status on the basis ofreceived print data to the CPU 101 or the external processor 141.

[0045] Now, a basic operation of the multifunction facsimile 100including the above-mentioned configuration will be described.

[0046] The facsimile 100 is connected with the external processor 141such as a PC via the USB Interface 116. In the facsimile 100, the USBfunction unit 113, which has multiple interfaces (Interface0-Interface2(204, 207, 211)) as shown in FIG. 2, is responsible for communicationprocessing with the external processor 141 (first interface means).Among the multiple interfaces, Interface0 (204) used for the recordingunit 115 is a first logical channel, Endpoint1 (205) for receivingcontrol data and print data is a first endpoint, and Endpoint2 (206) forsending an operation status (printing status) is a fourth endpoint.

[0047] On the other hand, the recording unit 115 of the facsimile 100 iscontrolled by the CPU 101 through the USB host control unit 114 and theUSB Interface 116 (second interface means).

[0048] In the facsimile 100, which has only one interface (Interface0)as shown in FIG. 3, the USB host unit 114 is responsible forcommunication with the recording unit 115. This only one interface,Interface0 (304) is a second logical channel, Endpoint1 (305) forreceiving control data and print data is a second endpoint, andEndpoint2 (306) for sending an operation status (printing status) is athird endpoint.

[0049] The CPU 101 in the facsimile 100 transfers control data and printdata received from the external processor 141 via Endpoint1 (205) in theUSB function control unit 113 to the recording unit 115 via Endpoint1(305) in the USB host control unit 114. At this moment, no edition isperformed on the data to be transferred.

[0050] In the same manner, the CPU 101 in the facsimile 100 alsotransfers an operation status of the recording unit 115 received viaEndpoint2 (306) in the USB host control unit 114 to the externalprocessor 141 via Endpoint2 (206) in the USB function control unit 113.At this moment, no edition is performed on data to be transferred,either.

[0051] As data is transmitted in a completely transparent manner here,the external processor 141 can freely control the recording unit 115 toperform printing and also be informed with an operation status thereofas if the external processor 141 is directly connected to the recordingunit 115.

[0052] An operation status (printing status) of the recording unit 115is obtained by the external processor 141 along the following procedure.

[0053] When In-token is given to Endpoint2 (206) of the USB functioncontrol unit 113 from the external processor 141, the CPU 101 issuesIn-token to Endpoint2 (306) of the USB host control unit 114. Therecording unit 115 receives this In-token and then sends information onpredetermined operation status through Endpoint2 (306) of the USB hostcontrol unit 114. The CPU 101 receives the information and transfersinformation on operation status received from the recording unit 115through Endpoint2 (206) of the USB function control unit 113 to theexternal processor 141.

[0054] In the above-mentioned configuration, the CPU 101 needs notanalyze print data, thus, load of processing is relieved. Any alterationto the recording unit 115 does not affect an operation of the CPU 101,thus, the printer to be used at the recording unit 115 can be freelyselected. In the external processor 141, as a basic printer driver canbe used as it is, it is advantageous that no effort or load is requiredfor developing or implementing a new driver.

[0055] Now, a recording operation of the multifunction facsimile 100 ofthe first embodiment according to the present invention will bedescribed in detail. In this first embodiment, the CPU 101 of thefacsimile 100 also uses Endpoint2 (306) used for obtaining an operationstatus for the external processor 141.

[0056]FIG. 4 is a flowchart for showing a process for local recordingsuch as copying, outputting a report, or recording a received image atthe multifunction facsimile of the first embodiment according thepresent invention. A program for performing this process is stored inthe ROM 102 and executed under a control of the CPU 101.

[0057] When the facsimile 100 starts a recording process locally, theCPU 101 obtains information on an operation status (operation statusinformation) of the recording unit 115 via Endpoint2 (306) of the USBhost control unit 114 at step S401 at first. This obtained operationstatus is stored in the RAM 103. The CPU 101 obtains information on thisoperation status by issuing In-token to Endpoint2 (306) of the USB hostcontrol unit 114 as mentioned above. The recording unit 115 receivesthis In-token and then sends operation status information at the momentto the CPU 101 via Endpoint2 (306).

[0058] Then, the process proceeds to step S402, where the operationstatus information obtained and stored in the RAM 103 is searched forand determined whether the recording unit 115 is in the process ofprinting. The operation status information includes an operation status,a busy status, a warning status, an operator-call status, and aservice-call status in the recording unit 115. The status information isdescribed by several characters of ASCII code in the first embodimentlike “DJS (operation status)”, “DBS (busy status)”, “DWS (warningstatus)”, “DOC (operator-call status)”, “DSC (service-call status)”,respectively. The operation status information is easily searched for,for a format of an operation status information returned from therecording unit 115 is “command: status code”, which are all described inASCII code. The recording unit 115 can be determined whether it is inthe process of printing or not by reading a status code following DJS(operation status).

[0059] When it is determined that the recording unit 115 is in theprocess of printing at step S402, it means that recording directed fromthe external processor 141 is performed. Then, the process abnormallyends without starting local recording.

[0060] When it is determined that the recording unit 115 is not in theprocess of printing at step S402, the process proceeds to step S403 tostart local recording. At first, the USB function control unit 113 isset to forbid reception of Endpoint1 (205), which is used for receivingcontrol data and print data from the external processor 141. The USBfunction control unit 113 has multiple endpoints as shown in FIG. 2.Each of the endpoints can be independently set for availability ofsending and receiving. Each endpoint has corresponding sending/receivingbuffer (not shown); when receiving is allowed, received data isautomatically stored into the buffer, while receiving is forbidden,received data is not stored into the buffer, and NAK (negativeacknowledge) is returned to a host (here the external processor 141) atthe end of packet transferring. The setting that forbids reception canprevent an instruction of the external processor 141 from beingtransferred to the recording unit 115 during a process of localrecording at the facsimile 100.

[0061] Next, the process proceeds to step S404, where local recordingsuch as copying, outputting a report, or recording a received image isperformed. The CPU 101 performs this local recording by transmittingcontrol data and print data to the recording unit 115 via Endpoint1(305) of the USB host control unit 114.

[0062] When all the recording data is output to the recording unit 115and this local recording ends, the process proceeds to step S405, wherethe setting that forbids reception of Endpoint1 (205) of the USBfunction-control unit 113 is reset and the process normally ends.

[0063] A flowchart for showing a control process for the multifunctionfacsimile of the first embodiment according to the present invention tolocally perform recording has been described.

[0064] As mentioned above, according to the first embodiment, when arecording (printing) process is performed by the recording unit 115 inthe facsimile 100, control data and recording data from the externalprocessor 141, such as a computer device, connected via a the USBInterface 116 can be forbidden, thus, conflict of local recording datawith recording data from the external processor at the recording unit115 can be avoided.

[0065] [Second Embodiment]

[0066] Now, a recording operation in a facsimile of a second embodimentaccording to the present invention will be described in detail. Thesecond embodiment is provided with a logical channel for the CPU 101 toobtain an operation status, aside from Endpoint2 (306) of the USB hostcontrol unit 114, which is used for obtaining an operation status forthe external processor 141. In the second embodiment, Endpoint0 (303)shown in FIG. 3 is used as a fifth endpoint for informing the CPU 101 ofa status of the recording unit 115.

[0067] The Endpoint0 (303) is usually used for bidirectionaltransmitting of a command. The CPU 101 (host side) issues a command as adevice request to a target (the recording unit 115). Accordingly, therecording unit 115 processes the command and returns data to the CPU101, if needed. The device request is an 8-byte command, which isroughly divided into a command common for all USB devices (StandardRequest), a command decided for each device class (Class Request), and acommand that can be freely decided by each vendor (Vendor Request).

[0068] In the second embodiment, the CPU 101 sends to the recording unit115 a command requesting for information on an operation status of therecording unit 115 using the vendor request. Accordingly, the recordingunit 115 returns information corresponding to this command, so that theCPU 101 obtains an operation status of the recording unit 115.

[0069] Now, a process where the multifunction facsimile 100 of thesecond embodiment according to the present invention performs localrecording such as copying, outputting a report, or recording a receivedimage will be described according to a flowchart shown in FIG. 5.

[0070]FIG. 5 is a flowchart for showing a process where recording suchas copying, outputting a report, or recording a received image islocally performed in the multifunction facsimile of the secondembodiment according to the present invention. A program for performingthis process is stored in the ROM 102 and executed under the control ofthe CPU 101.

[0071] When recording starts locally, an operation status of therecording unit 115 is obtained via Endpoint0 (303) of the USB hostcontrol unit 114 at step S501 at first. The CPU 101 obtains thisoperation status information by issuing a command for requiringinformation on the recording unit 115 using a vendor request viaEndpoint0 (303) of the USB host control unit 114 to the recording unit115 as mentioned above. The recording unit 115 receives this command andsends operation status information to the CPU 101 via Endpoint0 (303).

[0072] The process proceeds to step S502, where the received operationstatus information is searched for to determine whether the recordingunit 115 is in the process of printing. As operation status informationof the second embodiment is used only between the CPU 101 and therecording unit 115 and not passed onto the external processor 141, anitem or format deferent from data sent to the external processor 141 viaEndpoint2 (306) can be used as in the above-mentioned first embodiment.

[0073] Therefore, the second embodiment limits an item to an operationstatus for facilitating a search and uses a format of “command: statuscode”, all of which are described in ASCII code, like in the casedescribed in the above-mentioned first embodiment for operation statusinformation. However, all the statuses can be used as in the case whereoperation status information is passed onto the external processor 141via Endpoint2 (306), or operation status information can be informed ina binary format.

[0074] Operation status information in the second embodiment is “DIS:”for representing an operation status added with a status code. The CPU101 reads this status code and determines whether the recording unit 115is in the process of recording (printing).

[0075] When it is determined that the recording unit 115 is in theprocess of printing at step S502, it means that the recording directedby the external processor 141 is performed. Thus, the process abnormallyends without starting local recording.

[0076] When it is determined that recording unit 115 is not in theprocess of printing at step S502, recording starts locally. Initially atstep S503, the USB function control unit 113 is set to forbid receptionof Endpoint1 (205), which is used for receiving control data and printdata from the external processor 141. The USB function control unit 113has multiple endpoints as shown in FIG. 2, and each endpoint can beindependently set for availability of sending and receiving. Eachendpoint has a corresponding sending/receiving buffer (not shown); whenreceiving is allowed, received data is automatically stored into thebuffer, while receiving is forbidden, received data is not stored intothe buffer, and NAK (negative acknowledge) is returned to a host (CPU101) at the end of packet transferring. The setting that forbidsreception can prevent an instruction of the external processor 141 fromreaching the recording unit 115 during a process of local recording.

[0077] Next, the process proceeds to step S504, where a local recordingprocess such as copying, outputting a report, or recording a receivedimage is performed. The CPU 101 performs this local recording bytransferring control data and print data to the recording unit 115 viaEndpoint1 (305) of the USB host control unit 114. When all the recordingdata has been transferred, the process proceeds to step S505, where thesetting that forbids reception of Endpoint1 (205) of the USBfunction-control unit 113 is reset and the process normally ends.

[0078] As mentioned above, according to the second embodiment, when arecording (printing) process is performed by the recording unit 115 inthe multifunction facsimile 100, control data and recording data fromthe external processor 141, such as a computer device, connected via theUSB Interface 116 can be forbidden, thus, a conflict between localrecording data and recording data from the external processor 141 at therecording unit 115 can be avoided.

[0079]FIG. 6 is a block diagram showing a brief configuration of anexample of a print control device, multifunction facsimile 100 of athird embodiment according to the present invention, with the same partsas those in the above-mentioned FIG. 1 are denoted by the same referencenumerals and descriptions for them are omitted.

[0080] In FIG. 6, reference numeral 117 denotes a timer, which clockspredetermined time according to an instruction from the CPU 101 orgenerates an interruption to the CPU 101 to inform of elapse when a timeperiod designated by the CPU 101 has passed. In the third embodiment,one-to-one connection is adopted for the USB communication for recordingfunctions as in the above-mentioned embodiment.

[0081] Components 101-106, 108-114, and 117 described above areconnected each other via the CPU bus 121 under the control of the CPU101. As the USB interface to the USB function-control unit 113 of thethird embodiment is configured in the same manner as that in theabove-mentioned embodiment (FIGS. 2 and 3), the description for that isomitted.

[0082] Now, a basic operation of the multifunction facsimile 100 of thethird embodiment including the above-mentioned configuration will bedescribed.

[0083] The facsimile 100 of the third embodiment is connected with theexternal processor 141 such as a PC via USB (first interface means). TheUSB function control unit 113, which has multiple interfaces as shown inFIG. 2, is responsible for communication with the external processor 141in this facsimile 100. Among the multiple interfaces, Interface0 (204)used for the recording unit 115 (printer) is a first logical channel andhas Endpoint1 (205) for receiving control data and print data from theexternal processor 141 and Endpoint2 (206) for sending an operationstatus from the recording unit 115 to the external processor 141.

[0084] The recording unit 115 and the CPU 101 are connected via the USBin the facsimile 100, with the CPU 101 controlling a recording processby the recording unit 115 (second interface means). The USB host controlunit 114, which has a single interface (Interface0) as shown in FIG. 3,is responsible for communication with the recording unit 115 in thisfacsimile 100. Interface0 (304) (second logical channel) has Endpoint1(305) for receiving control data and print data from the CPU 101 andEndpoint2 (306) for sending an operation status of the recording unit115.

[0085] The CPU 101 in the facsimile 100 transfers control data and printdata received from the external processor 141 via Endpoint1 (205) in theUSB function control unit 113 to the recording unit 115 via Endpoint1(305) of the USB host control unit 114. At this moment, no edition isperformed on data to be transferred.

[0086] In the same manner, the CPU 101 in the facsimile 100 alsotransfers an operation status from the recording unit 115 received viaEndpoint2 (306) in the USB host control unit 114 to the externalprocessor 141 via Endpoint2 (206) of the USB function control unit 113.At this moment, no edition is performed on data to be transferred,either. As data is transmitted in a complete transparent manner here,the external processor 141 can perform printing by controlling therecording unit 115 and be informed on an operation status thereof as ifthe external processor 141 is directly connected with the recording unit115.

[0087] In the above-mentioned configuration, the CPU 101 needs notanalyze recording data from the external processor 141 when therecording unit 115 is printing on the basis of the recording data, thus,processing by the CPU 101 is relieved. Any alteration to the recordingunit 115 does not affect an operation of the CPU 101, thus, any type ofprinters can be selected for the recording unit 115. In the externalprocessor 141, as a basic printer driver can be used as it is, it isadvantageous that no effort or load is required for developing orimplementing a new driver.

[0088] Now, characteristics of the third embodiment will be brieflydescribed before describing the third embodiment in detail.

[0089] The third embodiment is characterized by setting a recordingsemaphore for the recording unit 115. The number of resources (therecording unit 115) is “1”. Therefore, when a single application hasobtained a recording semaphore, other applications cannot obtain therecording semaphore until the application that obtained the semaphorereleases it. This allows exclusive control of the recording unit 115.

[0090] In the third embodiment, when a main control unit (CPU 101)locally uses the recording unit 115, for example when it performs arecording operation such as copying, the recording task initially triesto obtain recording semaphore, and records (copies) by using therecording unit 115 only when the semaphore is successfully obtained. Itis forbidden to receive recording data from the external processor 141during a local recording process. Thus, no recording data from theexternal processor 141 can be inputted into the recording unit 115during a local recording process. After the local recording ends, therecording task releases the recording semaphore in parallel withpermitting reception of recording data from the external processor 141,which allows recording by using the recording unit 115 on the basis ofrecording data from the external processor 141.

[0091] On the other hand, when recording is performed by the externalprocessor 141, a recording semaphore is obtained for recording withrecording data from the external processor 141 at the moment ofreceiving recording data via the USB Interface 116 with the externaldevice (USB function control unit 113). Accordingly, recording data fromthe external processor 141 starts to be recorded. Thus, during thisrecording process, a main control unit (CPU 101) makes it impossible toperform local recording. Therefore, an exclusive use of the recordingunit 115 becomes available.

[0092] After a recording semaphore is obtained at the moment ofreceiving recording data from the external processor 141, the USB hostcontrol unit 114 monitors an operation status of the recording unit 115.When the operation status of the recording unit 115 becomes “beingoperating” and then returns to “standby”, the recording process isconsidered to end and the recording semaphore is released. When theoperation status of the recording unit 115 does not become “beingoperating” within a predetermined time period after the recordingsemaphore is obtained, it is determined that the USB host control unit114 overlooked a status indicating “being operating” due to aninsufficient time period of “being operating” and the recordingsemaphore is released to increase security.

[0093] A recording operation of the multifunction facsimile of the thirdembodiment will be described in detail in conjunction with specificexample.

[0094]FIG. 4 is a flowchart for showing a process for local recordingsuch as coping, outputting a report, or recording a received image atthe multifunction facsimile of the third embodiment according to thepresent invention. A program for performing the process is stored in theROM 102 and executed under the control of the CPU 101.

[0095] When the facsimile 100 locally starts a recording process, theUSB function control unit 113 is set to forbid reception of Endpoint1(205) to be used for receiving control data and print data from theexternal processor 141 at step S701 at first. The USB function controlunit 113 has multiple endpoints as shown in USB functions in FIG. 2,with each endpoint can be independently set for availability of sendingand receiving. Each endpoint has corresponding sending/receiving buffer(not shown); when receiving is allowed, received data is automaticallystored into the buffer, while receiving is forbidden, received data isnot stored into the buffer, and NAK (negative acknowledge) is returnedto a host (here the external processor 141) at the end of packettransferring.

[0096] Then the process proceeds to step S702, where a sending/receivingbuffer corresponding to Endpoint1 (205) of the USB function control unit113 is checked. If transferring of data from the external processor 141has already started when it is set to forbid reception at step S701,data has already stored in the buffer. Then the process proceeds to stepS707, where the setting of forbidding to receive Endpoint1 (205) of theUSB function control unit 113 is reset, and the process abnormally endswithout starting a local recording operation.

[0097] On the other hand, when a sending/receiving buffer is determinedto be empty at step S702, the process proceeds to step S703, where arecording semaphore is tried to be obtained. The recording semaphore isa resource controlling facility of the recording unit 115 provided by anoperating system (OS). An application that requires resources (hardwareresources) of the recording unit 115, such as a printer, requires the OSto obtain a recording semaphore corresponding to the resources. Onlywhen the requirement is accepted, the application performs an exclusiveprocess in the recording unit 115 by operating the resources (recordingunit). When a recording semaphore is failed to be obtained at step S403,it means that a recording operation on the basis of recording data fromthe external processor 141 has already started. Then, the processproceeds to step S707, where the setting of forbidding to receiveEndpoint1 (205) of the USB function control unit 113 is reset, and theprocess abnormally ends without starting a local recording operation.

[0098] When the recording semaphore is successfully obtained at stepS703, the process proceeds to step S704, where a local recording isperformed. The CPU 101 performs this local recording by transmittingcontrol data and print data to the recording unit 115 via Endpoint1(305) of the USB host control unit 114. When all the recording data hasbeen transmitted from the CPU 101, the process proceeds to step S705,where the semaphore is released. Then the process proceeds to step S706,where the setting of forbidding to receive Endpoint1 (205) of the USBfunction control unit 113 is reset and the process normally ends.

[0099] A flow of a control process of local recording has beendescribed.

[0100]FIG. 8 is a flowchart for showing a process when recording isperformed on the basis of recording data from the external processor 141in the multifunction facsimile 100 of the third embodiment according tothe present invention. A program for performing the process is stored inthe ROM 102, and is executed under the control of the CPU 101.

[0101] Initially at step S801, a sending/receiving buffer (not shown) ofEndpoint1 (205) of the USB function control unit 113 is checked. When itis determined that data exists in the buffer, it means that transferringof recording data from the external processor 141 has started. Then theprocess proceeds to step S802. When it is determined that the buffer isempty, it means that transmission of the recording data has not started.Then the process proceeds to step S801. At step S802, a recordingsemaphore is tried to be obtained. When the recording semaphore isfailed to be obtained here, it means that the semaphore is obtained forlocal recording. Then the process proceeds to step S803, where thereceiving buffer is cleared and the contents stored there is discarded.Then the process returns to step S801.

[0102] When the recording semaphore is determined to be obtained at stepS802, the process proceeds to step S804, where clocking is started withinitializing a clock value in timer 117 to “0” and a flag provided toRAM 103 is initialized to off.

[0103] Next, the process proceeds to step S805, where the data receivedvia Endpoint1 (205) of the USB function control unit 113 is transmittedvia Endpoint1 (305) of the USB host control unit 114 to the recordingunit 115. Then check to see whether recording ends or not starts in oneof the following steps. At step S806, the above-mentioned flag ischecked to see if it is off or not. This flag is initialized to off atstep S804 at starting the recording as mentioned above. When the flag isdetermined to be off at step S806, the process proceeds to step S807,where an operation status of the recording unit 115 is checked.

[0104] In the third embodiment, the CPU 101 checks an operation statusof the recording unit 115 by reading an operation status of therecording unit 115 via Endpoint2 (306) of the USB host control unit 114.An operation status is obtained in a well-known manner, which isgenerally performed between a PC and a printer. The manner is summarizedas follows: the CPU 101 previously designates an operation status to bereturn to the recording unit 115. These operating statuses include anoperating status, a busy status, a warning status, an operator-callstatus, and a service-call status. Each piece of status information isrepresented as “DJS (operation status)”, “DBS (busy status)”, “DWS(warning status)”, “DOC (operator-call status)”, and “DSC (service-callstatus)”. A required status among them is sent after a statusdesignation command.

[0105] In the third embodiment, a status designation command is SSR.When an operating status “DIS” and a busy status “DBS” are needed, thetwo commands are connected by a comma and sent as “SSR=DJS, DBS”. Therecording unit 115 receives this and stores the designated contents andreturns the designated status when a status is required hereafter. Aformat for retuning is “command: status”, which are all represented inASCII code.

[0106] The requirement of status is performed by giving In-token toEndpoint2 (306) of the USB of the USB host control unit 114. That is tosay, when the CPU 101 wants to know an operation status of the recordingunit 115, it obtains the operation status of the recording unit 115 byissuing In-token to the USB host control unit 114, searching for datareceived from the USB host control unit 114, and extracting a statusfollowing a required command. As the CPU 101 wants to know whether therecording unit 115 is operating or not, it can determine whether therecording unit 115 is “operating” or not by reading a status code after,“DJS (operation status)” in a returning format of “command: status”.

[0107] When a determination at step 807 indicates “being operating”, theprocess proceeds to step S809, where a flag is set on. Then the processreturns to step S805. Hereafter, if received data exists in Endpoint1(205) of the USB function control unit 113, pieces of data istransferred one after another via Endpoint1 (305) of the USB hostcontrol unit 114 to the recording unit 115, while checking of the end ofrecording is repeated. “being operating” of the recording unit 115 meansthat the recording unit 115 is actually in the process of recording, orin the process of recovering operation and the like, which is a statusindicating that the recording unit 115 is processing for all theprocesses to be performed on received data.

[0108] When it is determined that the recording unit 115 is no longer“operating” at step S807, the process proceeds to step S810, where atime clocked by the timer 117 is checked. The timer 117 has beeninitialized to “0” at step S804 on starting a recording process andclocking has started as mentioned above. When a clock value in the timer117 exceeds a threshold at step S810, it is determined that therecording data sent from the external processor 141 was invalid or thata status of “being operating” was overlooked due to an insufficient timeperiod of valid operation. Then the process proceeds to step S811, wherea recording semaphore is released and the process ends. It is assumedthat a threshold is 15 seconds in the third embodiment. When a clockvalue in the timer 117 is under a threshold at step S810, the processreturns to step S805, from which the above-mentioned process isrepeated.

[0109] When the flag is not off at step S806, it means that therecording unit 115 has started processing the received data. Then theprocess proceeds to step S808, where an operation status of therecording unit is checked. An operation status of the recording unit 115is input through Endpoint2 (206) of the USB host control unit 114 andchecked as in step S807. When the determination indicates “beingoperating”, it means that a process of the recording unit 115 is in theprocess. Then the process proceeds to step S805, from which theabove-mentioned process is repeated. When determination no longerindicates that an operation status of the recording unit 115 is “beingoperating” at step S808 at last, it is determined that processing in therecording unit 115 ends. Then the process proceeds to step S810, wherethe recording semaphore is released and the process ends.

[0110] [Other Embodiments]

[0111] Purpose of the present invention is accomplished by providing arecording medium recording a program code of software, which implementsfunctions of the embodiments, to a system or a device as mentioned aboveand by being read and executed a program code stored in the recordingmedium with a computer (or CPU or MPU) of the system or the device. Inthis case, a program code that is read out from a recording mediumimplements the above-mentioned function of the embodiments, thus, therecording medium storing the program code constitutes the presentinvention. As a recording medium for providing the program code, forexample, a floppy disk, a hard disk, an optical disk, a magneto-opticaldisk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, aROM, etc. can be used.

[0112] In addition to the case where a computer implements theabove-mentioned functions of the embodiments by executing a read outprogram code, the present invention includes the case where an OS(operating system) and the like running on the computer performs a partof or all of the actual processing according to an instruction of theprogram code, which implements the above-mentioned function of theembodiments.

[0113] The present invention also includes the case where a program coderead out from a recording medium is written on a memory, which isprovided to a function expansion board inserted into a computer or afunction expansion unit connected to a computer, and then a CPU or thelike, which is provided to the function expansion board or a functionexpansion unit, performs a part of or all of the actual processing onthe basis of an instruction of the program code, whose processingimplements the above-mentioned function of the embodiments.

[0114] According to the embodiment as mentioned above, an exclusiveprocessing of a recoding operation in the multifunction facsimile can beimplemented. Accordingly, the usefulness of a printer of the facsimileis significantly enhanced.

[0115] The present invention has a merit of free selection in types ofrecording unit, because it does not need for a CPU (control unit) toanalyze recording data in order to implement an exclusive processing,which does not add any more loads to the processing of the CPU, and theCPU does not depend on language specifications of recording data.

[0116] The present invention is effective in that the above-mentionedintentions can be implemented in low cost without needing a newhardware.

[0117] An operation status in a recording unit (a printer) is obtainedby using the same configuration as that of a basic recording unit ininforming an external processor such as a PC of a status. Thus, thepresent invention is also advantageous in that a recording unit needsnot be reformed.

[0118] The present invention has another merit of applicability todynamically changing recording unit, because another configuration isprovided to obtain an operation status in a recording unit, whichfacilitates an analysis of an operation status, and because an item ofoperation status information to be informed is registered by an externalprocessor such as a PC.

[0119] The present invention is not limited to the above embodiments andvarious changes and modifications can be made within the spirit andscope of the present invention. Therefore, to appraise the public of thescope of the present invention, the following claims are made.

What is claimed is:
 1. A recording control apparatus comprising: firstinterface means having multiple logical channels, for receivingrecording data from an external processor by using a first logicalchannel among the multiple logical channels; a recording unit forrecording an image on the basis of recording data; second interfacemeans for connecting with said recoding unit; first recording controlmeans for transmitting recording data received via said first interfacemeans to said recoding unit via said second interface means and causingsaid recording unit to record; and second recording control means fortransmitting the recording data through said second interface means tosaid recoding unit and causing said recording unit to record, whileforbidding reception of recording data from the external processor byusing said first interface means during the recording operation.
 2. Theapparatus according to claim 1, wherein said second recording controlmeans including obtaining means for obtaining an operation status insaid recording unit, wherein said second recording control meanstransmits recording data to said recording unit through said secondinterface means and causing said recording unit to record, when theoperation status obtained by said obtaining means indicates that saidrecording unit is not in recording operation.
 3. The apparatus accordingto claim 1, wherein said first interface means complies with the USBstandards, wherein said first interface means forms the multiple logicalchannels by providing multiple interfaces in conformity with the USBstandards, and wherein the first logical channel can communicatebi-directionally with multiple endpoints.
 4. The apparatus according toclaim 1, wherein said second interface means complies with the USBstandards, wherein said second interface means forms a second logicalchannel with a single interface in conformity with the USB standards,and wherein the second logical channel can communicate bi-directionallywith multiple endpoints.
 5. A recording control method comprising: afirst recording control step of transmitting recording data received viaa first interface that comprises multiple logical channels and receivesthe recording data from an external processor using a first logicalchannel of the multiple logical channels, to a recoding unit and causingthe recording unit to record, via a second interface for connecting withthe recoding unit for recording an image on the basis of recording data;a second recording control step of transmitting the recording datathrough the second interface to the recoding unit and causing therecording unit to record, while forbidding reception of recording datafrom the external processor using said first interface during therecording operation of the recording unit.
 6. The method according toclaim 5, wherein said second recording control step includes anobtaining step of obtaining an operation status in the recording unit,wherein the recording data is transmitted through the second interfaceto the recording unit, when the operation status obtained in saidobtaining step indicates that the recording unit is not in recordingoperation.
 7. The method according to claim 5, wherein the firstinterface complies with the USB standards, and the first interface formsthe multiple logical channels by providing multiple interfaces inconformity with the USB standards, and the first logical channel cancommunicate bi-directionally with multiple endpoints.
 8. The methodaccording to claim 5, wherein the second interface complies with the USBstandards, and the second interface forms a second logical channel witha single interface in conformity with the USB standards, and the secondlogical channel can communicate bi-directionally with multipleendpoints.
 9. A recording control apparatus comprising: first interfacemeans having multiple logical channels, for receiving recording datafrom an external processor via a first logical channel of the multiplelogical channels; a recording unit for recording an image on the basisof recording data; second interface means for connecting with saidrecoding unit; first recording control means for transmitting recordingdata received by said first interface means to said recoding unit viasaid second interface means and causing said recording unit to record,after a recording semaphore of the recording data; and second recordingcontrol means for transmitting the recording data through said secondinterface means to said recoding unit and causing said recording unit torecord, when a recoding semaphore can be obtained.
 10. The apparatusaccording to claim 9, wherein said second record control means forbidsreception of recording data from the external processor using said firstinterface means, before said second record control means transmitsrecording data through said second interface means to said recodingunit.
 11. The apparatus according to claim 9, wherein said secondrecording control means comprises obtaining means for obtaining anoperation status of said recording unit, wherein said second recordcontrol means transmits recording data to said recording unit throughsaid second interface means and causing said recording unit to record,when said operation status obtained by said obtaining means indicatesthat said recording unit is not in recording operation.
 12. Theapparatus according to claim 9, wherein said first interface meanscomplies with the USB standards, wherein said first interface meansforms said multiple logical channels by providing multiple interfaces inconformity with the USB standards, and wherein said first logicalchannel can communicate bi-directionally with multiple endpoints. 13.The apparatus according to claim 9, wherein said second interface meanscomplies with the USB standards, wherein said second interface meansforms a second logical channel with a single interface in conformitywith the USB standards, and wherein said second logical channel cancommunicate bi-directionally with multiple endpoints.
 14. The apparatusaccording to claim 11, wherein said first recording control meansreleases the recording semaphore, when the operation status obtained bysaid obtaining means no longer indicates that it is in operation. 15.The apparatus according to claim 11, wherein said first recordingcontrol means releases the recording semaphore, when the operationstatus obtained by said obtaining means does not indicate that it isoperating even after a predetermined time period has elapsed.
 16. Arecording control method comprising: a first recording control step oftransmitting recording data received via a first interface thatcomprises multiple logical channels and receives recording data from anexternal processor, to a recoding unit, via a second interface forconnecting with the recoding unit for recording an image on the basis ofrecording data, when a recoding semaphore can be obtained; and a secondrecording control step of transmitting recording data through the secondinterface to the recoding unit and causing the recording unit to record,when a recoding semaphore can be obtained.
 17. The method according toclaim 16, wherein reception of recording data from the externalprocessor through the first interface is forbidden, before recordingdata is transmitted through the second interface to the recoding unit isrecorded by the recording unit.
 18. The method according to claim 16,wherein said second recording control step comprises an obtaining stepof obtaining an operation status of the recording unit, whereinrecording data is transmitted to the recording unit through the secondinterface and recorded, when the operation status obtained in saidobtaining step indicates that the recording unit is not in recordingoperation.
 19. The method according to claim 16, wherein said firstinterface complies with the USB standards, wherein the first interfaceforms the multiple logical channels by providing multiple interfaces inconformity with the USB standards, and wherein said first logicalchannel can communicate bi-directionally with multiple endpoints. 20.The method according to claim 16, wherein said second interface complieswith the USB standards, wherein said second interface forms a secondlogical channel with a single interface in conformity with the USBstandards, and wherein said second logical channel can communicatebi-directionally with multiple endpoints.
 21. The method according toclaim 18, wherein in said first recording control step, said recordingsemaphore is released when the operation status obtained in saidobtaining step no longer indicates that it is in operation.
 22. Themethod according to claim 18, wherein in said first recording controlstep, said recording semaphore is released when the operation statusobtained in said obtaining step does not indicate that it is operatingeven after a predetermined time period has elapsed.
 23. A recordingcontrol apparatus comprising: a first interface unit comprising multiplelogical channels, adapted to receive recording data from an externalprocessor via a first logical channel of the multiple logical channels;a recording unit for recording an image on the basis of recording data;a second interface unit adapted to connect with said recoding unit; anda control unit adapted to transmit recording data received via saidfirst interface unit to said recoding unit via said second interfacemeans and causing the recording unit to record; wherein said controlunit forbids reception of recording data from the external processorusing said first interface unit during the recording operation.
 24. Theapparatus according to claim 23, wherein said control unit comprisesobtaining means for obtaining an operation status of said recordingunit, wherein said control unit transmits recording data to saidrecording unit through said second interface unit and causes therecording unit to record, when the operation status obtained by saidobtaining means indicates that said recording unit is not in recordingoperation.
 25. The apparatus according to claim 23, wherein said firstinterface unit complies with the USB standards, wherein said controlunit can communicate bi-directionally via said first interface unit withthe external processor.
 26. The apparatus according to claim 23, whereinsaid second interface unit complies with the USB standards, wherein saidcontrol unit can communicate bi-directionally via said second interfacemeans with said recording unit.
 27. A recording control methodcomprising: a recording control step of transmitting recording datareceived via a first interface including multiple logical channels andreceiving recording data from an external processor by using a firstlogical channel of the multiple logical channels, to a recoding unit viaa second interface for connecting with the recoding unit for recordingan image on the basis of recording data, and causing to the recordingunit to record, wherein, in said recording control step, reception ofrecording data from the external processor via the first interface isforbidden during the recording operation.
 28. The method according toclaim 27, wherein said recording control step comprises an obtainingstep of obtaining an operation status of the recording unit, wherein therecording data is transmitted through the second interface to therecording unit, when the operation status obtained in said obtainingstep indicates that the recording unit is not in recording operation.29. The method according to claim 27, wherein the first interfacecomplies with the USB standards, wherein the first interface cancommunicate bi-directionally via the first interface with the externalprocessor.
 30. The method according to claim 27, wherein the secondinterface complies with the USB standards, in said control step,bidirectional communication via the second interface with the recordingunit can be performed.
 31. A record control apparatus comprising: firstinterface means including multiple logical channels, for receivingrecording data from an external processor by using a first logicalchannel among the multiple logical channels; a recording unit forrecording an image on the basis of recording data; second interfacemeans for connecting with said recoding unit; and control means fortransmitting the recording data received by said first interface means,to said recoding unit via said second interface means and causing saidrecording unit to record, after a recording semaphore is obtained whenthe recording data received via said first interface means exists. 32.The apparatus according to claim 31, wherein said control means forbidsreception of the recording data from the external processor via saidfirst interface before said control means transmits recording data tosaid recoding unit via said second interface means and causes saidrecording unit to record.
 33. The apparatus according to claim 31,wherein said control means comprises obtaining means for obtaining anoperation status of said recording unit, wherein said control meanstransmits recording data through said second interface means to saidrecording unit and record, when the operation status obtained by saidobtaining means indicates that said recording unit is not in recordingoperation.
 34. The apparatus according to claim 31, wherein said firstinterface means complies with the USB standards, wherein said controlmeans can communicate bi-directionally via said first interface meanswith the external processor.
 35. The apparatus according to claim 31,wherein said second interface means complies with the USB standards,wherein said control means can communicate bi-directionally via saidsecond interface means with said recording unit.
 36. The apparatusaccording to claim 33, wherein said control means releases the recordingsemaphore, in a case where the operation status obtained by saidobtaining means no longer indicates that it is in operation.
 37. Theapparatus according to claim 33, wherein said control means releases therecording semaphore in a case where the operation status obtained bysaid obtaining means does not indicate that it is operating even after apredetermined time period has elapsed.
 38. A recording control methodcomprising: a reception step of receiving recording data via a firstlogical channel among a plurality of logical channels of a firstinterface from an external processor; and a control step of transmittingthe recording data to a recording unit via a second interface, in a casewhere the recording data received via the first logical channel existsand a recording semaphore of the recording data is obtained.
 39. Themethod according to claim 38, wherein said control step forbidsreception of the recording data from the external processor via thefirst logical channel, before the recording data has been transmittedthrough the second interface to the recoding unit.
 40. The methodaccording to claim 38, wherein said control step comprises obtainingstep of obtaining an operation status of the recording unit, therecording data is transmitted to the recording unit via the secondinterface, in a case where the operation status obtained in saidobtaining step indicates that the recording unit is not in recordingoperation.
 41. The method according to claim 38, wherein the firstinterface complies with the USB standards, bidirectional communicationcan be performed via the first interface with the external processor.42. The method according to claim 38, wherein the second interfacecomplies with the USB standards, bidirectional communication isperformed via the second interface with the recording unit.
 43. Themethod according to claim 40, wherein in said control step, therecording semaphore is released in a case where the operation statusobtained in said obtaining step is no longer in operation.
 44. Themethod according to claim 40, wherein in said control step, therecording semaphore is released in a case where the operation statusobtained in said obtaining step does not indicate that it is operatingeven after a predetermined time period has elapsed.